DXF Geometry Import Converter

The DXF import converter is an intelligent and complex converter which will take any DXF file of 2d, 2-1/2d or 3d entities and transform them into optimized, grouped meshes of 3d polygons.

Whereas many DXF readers only read and convert 3D FACEs and 3d PolyMeshes, this converter will read in all R12 entities and convert them to 3d polygon equivalents. This includes processing all of the PolyLine attributes (bulges, line widths and thickness), PolyMesh types (mesh, face and lines) and 2d entities (lines, arcs and circles). In addition, the converter provides 5 powerful methods to "rip" apart the DXF file and convert it into separate objects. Also, if the DXF file uses blocks and instances then they will be converted into equivalent objects and instances within the converter's database - this will create a very small imported database since no data is duplicated unless necessary.

Highlights of the converter are as follows:

Supported Entities and their Conversion

In order for the converter to accept an entity into its internal database the entity must be 3-dimensional. This excludes the direct importation of DXF arcs, circles, lines and polylines since they have no area. However, this DXF import converter performs a great deal of manipulation of these 2d entities so that they may be read in as 3d polygons. The conversion process is described as follows:

Special Treatment of DXF Entities

The 2d polyline is given "extra special" treatment by the DXF converter. First, all bulges in the polyline are converted to arc segments. Next, the converter orients all of the resulting line segments of the polyline so that they are connected in a head-to-tail fashion (a requirement of a 3d polygon) and then the adjoining polyline segments are mitred together so that no holes are evident. Finally, the converter removes any redundant vertex coordinates (such as the last one in the list) so that the vertices form a valid 3d polygon. If the polyline has thickness (but no width) then the polyline is extruded into a 3d volume and directly stored in the converter's internal database as a highly efficient and verified mesh primitive. If the polyline has width then it will be stored as a series of less-efficient individual polygon faces. Since a polyline with extrusion is commonly used to create 3d objects within an AutoCAD drawing, these processing steps ensure that the resulting imported data will result in good 3d renderings of such data.